Information processing apparatus, information processing method, computer readable medium, and computer data signal

ABSTRACT

An information processing apparatus that configures an operation screen formed by one or more user interface components in which a parameter value is a base of displaying the user component, the apparatus includes: a meta-information storage that stores meta-information in which a user having a privilege to change a parameter value and an influence range which is under influence of the changed parameter are stored; a parameter storage that stores a parameter value set by a user; a parameter change section that changes the parameter value stored in the parameter storage in accordance with a request from a user; and an operation screen configuration section that configures the operation screen to display by specifying the influence range based on the meta-information of each parameter contained in the user interface component, and acquiring the parameter value from the parameter storage.

BACKGROUND

1. Technical Field

The present invention relates to an information processing apparatus, aninformation processing method, a computer program, and computer datasignal for presenting information on a GUI (Graphical User Interface)screen providing a graphics-based operating environment. Particularly itrelates to an information processing apparatus, an informationprocessing method and a computer program in which a user can customize aGUI screen.

More specifically, the present invention relates to an informationprocessing apparatus, an information processing method and a computerprogram in which a user can customize the configuration of a UI screenby using UI components. Particularly it relates to an informationprocessing apparatus, an information processing method and a computerprogram in which the contents of customization allowable to a user andthe range of influence of customization can be controlled in accordancewith UI components and an operating environment.

2. Related Art

Various types of computers have been developed and produced with therecent rapid advance of the information technology (IT) field, so thatcomputers have become widespread in universities and other researchorganizations, offices in enterprises and general homes. A GUI(Graphical User Interface) supporting a bitmapped display format andproviding a graphics-based operating environment is incorporated in mostof computers, so that a user's intuitive entry operation through a mousecursor is used widely and commonly. For example, U.S. Apple's Macintosh,U.S. Microsoft's Windows (registered trademark), etc. are known widelyas the GUI-based environment.

In the latest computer provided with a GUI, a user can configure the UIscreen. For example, in Cybozu's groupware “Office”, a user cancustomize the UI screen in a portion unrelated to processing in theinside of the system so that the arrangement and colors of UI componentsconstructing the screen can be changed.

SUMMARY

According to an aspect of the present invention, an informationprocessing apparatus that configures an operation screen formed by oneor more user interface components in which a parameter value is a baseof displaying the user component, the apparatus includes: ameta-information storage that stores meta-information in which a userhaving a privilege to change a parameter value and an influence rangewhich is under influence of the changed parameter are stored; aparameter storage that stores a parameter value set by a user; aparameter change section that changes the parameter value stored in theparameter storage in accordance with a request from a user; and anoperation screen configuration section that configures the operationscreen to display by specifying the influence range based on themeta-information of each parameter contained in the user interfacecomponent, and acquiring the parameter value from the parameter storage.

BRIEF DESCRIPTION OF THE DRAWINGS

Exemplary embodiment of the present invention will be described indetail based on the following figures, wherein:

FIG. 1 is a diagram typically showing the hardware configuration of aninformation processing apparatus in which a user can appropriatelycustomize the configuration of a UI screen by using UI components;

FIG. 2 is a view showing an example of configuration of a UI screenformed from UI components;

FIG. 3 is a view showing an example of configuration of a UI componentwhich holds a plurality of parameters;

FIG. 4 is a view showing an example of configuration of a pagenavigation component “navbar” of a Web application;

FIG. 5A is a view showing a state in which meta-information is changedin a navigation bar of the information processing apparatus;

FIG. 5B is a view showing a state in which meta-information is changedin a navigation bar of the information processing apparatus;

FIG. 6 is a view showing a functional configuration for controlling thecontents of customization allowable to a user and the range of influenceof customization in accordance with each UI component and each operatingenvironment;

FIG. 7 is a view showing an example of configuration of a careen forchanging a parameter;

FIG. 8 is a view showing an example of configuration of a screen forchanging a navigation bar;

FIG. 9 is a flow chart showing a processing procedure required for auser to change a parameter; and

FIG. 10 is a flow chart showing a processing procedure for displaying aUI screen in accordance with a screen display request from a user.

DETAILED DESCRIPTION

An embodiment of the invention will be described below in detail withreference to the drawings.

FIG. 1 typically shows the hardware configuration of an informationprocessing apparatus in which each user can appropriately customize theconfiguration of a UI screen by using UI components. The informationprocessing apparatus can be formed from a general-purpose computersystem such as a personal computer (PC).

The information processing apparatus includes a processor 10 as itscenter. The processor 10 executes various processes on the basis ofprograms stored in a memory under a program execution environmentprovided by an operating system (OS). Assume that the OS supports abitmapped display format and provides a GUI operating environment.

The processor 10 controls various connected peripheral apparatusesthrough a bus 30. The peripheral apparatuses connected to the bus 30 areas follows.

For example, a memory 20 is made of a semiconductor memory such as aDRAM (Dynamic RAM). The memory 20 is used for loading program codesexecuted by the processor 10 and temporarily storing environmentvariables and system variables in execution of a program. The memory 20forms a memory space for the processor 10.

A display controller 21 generates a display image in accordance with adrawing instruction given from the processor 10 and sends the displayimage to a display device 22. The display device 22 connected to thedisplay controller 21 outputs the image to a screen in accordance withdisplay image information given from the display controller 21.

A keyboard 24 and a mouse 25 are connected to an input/output interface(I/O interface) 23. The I/O interface 23 transfers an input signal fromthe keyboard 24 or the mouse 25 to the processor 10.

A network interface 26 is connected to an external network such as anLAN or the Internet. The network interface 26 controls datacommunication through the Internet. That is, the network interface 26transfers data given from the processor 10 to another apparatus on theInternet and receives data given through the Internet and sends the datato the processor 10. For example, the network interface 26 can receiveprograms and data from the outside through the network.

A hard disk drive (HDD) controller 27 controls I/O of data to/from anHDD 28. Programs of an operating system (OS), application programs anddriver programs to be executed by the processor and data or contents tobe referred to or reproduced by the programs are stored in the HDD 28.In this embodiment, each program is installed in an executable format onthe HDD 28.

Incidentally, a lot of electric circuits other than those shown in FIG.1 are required for forming the information processing apparatus. Theother electric circuits will be not described in this specificationbecause they are well-known to those skilled in the art and they do notform the gist of the invention. Please note that only part ofconnections between respective hardware blocks is shown in the drawingsin order to avoid complexity of the drawings.

A method of customizing the UI screen will be described next.

Assume that the UI screen used in this embodiment is formed from one ormore independent UI components. The UI component mentioned here isbasically configured from combination of the name of each parameter andthe value of the parameter, so that the UI component has a mechanismthat display is decided by the value of the parameter. One UI componentholds zero or more parameters. That is, one UI component may have aplurality of parameters. Some UI component embedded in the UI screen maybe formed from information for reference to an external UI component.

FIG. 2 shows an example of the UI screen formed from UI components. UIcomponents having parameter names “navigation component”, “scheduledisplay component” and “link group component” are arranged on the screenshown in FIG. 2.

FIG. 3 shows an example of configuration of a UI component having aplurality of parameters. The UI component shown in FIG. 3 is called“object list display component” which is used for displaying a list ofobjects. The UI component is formed from a parameter “columns” fordeciding what to be displayed on each column and a parameter “color” fordeciding the color of the UI component. In FIG. 3, “title”, “createdate” and “owner” are provided as values of the parameter “columns” and“white” is provided as a value of the parameter “color”. Each user cancustomize the color of the list display component by changing the valueof the parameter “color” for deciding the color.

The UI screen or each of UI components contained in the UI screen isformed from zero or more parameters. Each user can designate thecontents of display by setting values of respective parameters orchanging the setting. In addition, meta-information is given inaccordance with each parameter in order to make a judgment as to whethereach parameter can be set by the user, and define the range of influenceof parameter values set by the user. When, for example, theadministrator is designated as the privilege of change and all users aredesignated as the range of influence, only the administrator can changethe values of the parameter but the changed contents of the parameterhave influence on all users.

FIG. 4 shows an example of configuration of a page navigation component“navbar” of a Web application. The page navigation component shown inFIG. 4 has several link items displayed. When a link is clicked, thedisplayed page can be changed to another page. For example, link itemsare array type parameters, so that link items to be displayed can bechanged when the contents of the array are changed.

This page navigation component is roughly a component common to thewhole Web application (i.e. a component unchanged when any user viewsthe component). It is conceived that the user which can customize thepage navigation component needs to be limited to the administrator ofthe Web application. In this case, meta-information is provided so thatthe user which can change the parameter of the page navigation componentis set to the administrator while the range of influence of the changeis set to all users.

On the other hand, when the color of a private page needs to be changed,meta-information can be provided so that the privilege of change of theparameter is given to all users and the range of influence of the changeis set to a user of the private page.

When the UI of the information processing apparatus has theaforementioned mechanism, a generally accepted value is held as adefault value in meta-information of each parameter of a UI component atthe stage of development. If necessary, the administrator of theinformation processing apparatus can change the meta-information of eachparameter so that the portion customizable to each user and the range ofinfluence of the contents of customization are set dynamically in the UIscreen.

A specific example in which one information processing apparatus is usedby a plurality of groups will be considered here. When one informationprocessing apparatus is used by a plurality of groups, operating formsare not always unified in all the groups. It may be conceived that theuser interface needs to be changed in accordance with each group.

In default, meta-information of the UI component is provided so that theprivilege of change is given to the administrator of the informationprocessing apparatus and the range of influence of the changed contentsis set to all users. When the setting of the meta-information is changedso that the privilege of change is given to the administrator of eachgroup and the range of influence is set to each group, the UI componentcan be operated uniquely to each group.

FIGS. 5A and 5B graphically show a state in which meta-information ischanged with respect to a navigation bar of the information processingapparatus.

The navigation bar is roughly a component common to the whole system.Accordingly, it is proper that only the administrator of the system cancustomize the navigation bar. In default, meta-information of the UIcomponent is provided so that the privilege of change is given to theadministrator and the range of influence of the change is set to allusers (see FIG. 5A).

In the aforementioned setting, the navigation bar is displayed in commonto all groups. There is a problem that the navigation bar containing acertain item requested to be deleted from the navigation bar by a groupA cannot be customized if another group B needs the item. Therefore,when the meta-information is changed so that the privilege of change ofthe navigation bar is given to the administrator of each group and therange of influence of the changed contents is set to each group, thenavigation bar can be customized uniquely to each group. In the exampleshown in FIG. 5B, items contained in the navigation bar vary inaccordance with each group.

The information processing apparatus according to this embodiment cancontrol the contents of customization allowable to each user and therange of influence of customization in accordance with each UI componentand each operating environment by setting the privilege of change andthe range of influence of the changed contents as meta-information withrespect to each UI component when a UI screen is formed from one or moreUI components while each UI component is presented on the basis of avalue set in each parameter contained in the UI component. FIG. 6typically shows a functional configuration to make such controlpossible.

A UI template is used for generating and editing each of UI componentsconstituting a UI screen. The UI template may be separated into twoparts, i.e. one part for deciding the arrangement of UI components andthe other part for displaying the UI components per se. An example ofnotation of a template (a template for displaying the background color)is as follows.

bgcolor=“$params.get(‘color’)”

Table entries are provided in a meta-information table in accordancewith UI components. Meta-information of each UI component, that is, theprivilege of change and the range of influence of customization areregistered in the meta-information table.

As a method of changing meta-information, for example, an administratorUI screen (not shown) is prepared and meta-information is set while a UIcomponent or parameter to be changed is selected on the administrator UIscreen. A result of the change of meta-information is reflected on themeta-information table.

A parameter storage portion contains parameter tables in accordance withranges of influence. Parameter values set in UI components by respectiveusers are stored in the parameter tables. An “all users” table is aparameter table for storing parameter values in which the range ofinfluence is set to all users. The administrator of the system can setthe “all users” table. A “group” table is a parameter table for storingparameter values in which the range of influence is limited to a group.The administrator of the group can set the “group” table. Each “user”table is a parameter table of user's own for storing values ofparameters changed by the user.

For example, assume that different parameter values with respect to a UIcomponent “navbar” are set between all users and a group A in theparameter storage portion. When the meta-information table is providedso that the privilege of change of “navbar” is set to the systemadministrator and the range of influence is set to all users, a controlportion displays “navbar” by referring to the parameter value set in the“all users” table. On the other hand, when the system administratorchanges the meta-information so that the privilege of change is given toeach group and the range of influence is set to each group, the controlportion displays “navbar” by referring to the parameter value set in thegroup A in order to configure a UI screen of each user in the group A.

As a method of customizing the UI screen, for example, a UIcustomization setting page (not shown) is prepared for each user and theuser selects a parameter to be customized through the screen and setsthe value of the parameter. A result of the setting is reflected on theparameter storage portion. When a parameter in which the range ofinfluence is limited to the user per se is changed, the changedparameter value is stored in a corresponding “user” parameter table.When a parameter in which the range of influence is set to all users ischanged, the changed parameter value is stored in the “all users”parameter table.

When, for example, the background color of the UI screen is to bechanged in FIG. 6, the user changes the value of a parameter “color”through a UI customization setting page (not shown) or the like. Uponreception of a changing request from the user, the control portionacquires the privilege of change of the parameter “color” and the rangeof influence of the changed contents by referring to themeta-information table. In the example shown in FIG. 6, the parameter“color” is judged to be customizable because the parameter “color” canbe changed by all users. Moreover, because the range of influence is setto “user”, the parameter table of the user per se in the parameterstorage portion is referred to so that the value of the parameter“color” currently stored is changed to a value requested by the user.

To customize the UI screen, the user needs to change a parameterdefining the look of the UI. FIG. 7 shows an example of configuration ofthe screen for changing the parameter. In FIG. 7, a button “set” isdisposed, as an entry to the change screen, in a UI component“navigation bar”. When the button “set” is clicked, the contents ofdisplay can be changed to the change screen.

FIG. 8 shows an example of configuration of the screen for changing thenavigation bar. Customization buttons (check boxes) for designating theselection of respective items “top”, “sitemap”, “search” and “help” ofthe navigation bar prepared by the UI template are presented in thechange screen. In the example shown in FIG. 8, items “top”, “site map”and “help” have been selected. When a button “apply” is clicked, a value{“top”, “sitemap”, “help”} of the parameter “navbar” is sent andregistered in the meta-information table.

Incidentally, only the user given the privilege of change in themeta-information table can change the parameter value. When a mechanismfor displaying a bottom “customize” for only the user having theprivilege of change of the parameter is introduced into the changescreen shown in FIG. 8, it is convenient for the user. To judge whetherthe privilege of change of the parameter is given or not, a privilegecorresponding to the parameter can be acquired from the meta-informationtable so that a judgment can be made as to whether the privilege isgiven to the user in operation or not.

FIG. 9 is a flow chart showing a processing procedure necessary for auser (e.g. user A) to change a parameter.

When there is a request to customize the UI screen, the name and valueof the parameter to be changed are first sent to the control portion(step S1).

The control portion searches the meta-information table for theparameter and acquires the range of influence of change of the parameter(step S2).

Then, the control portion decides a parameter table corresponding to theacquired range of influence and searches the parameter storage portionfor the table (step S3).

When the parameter table is absent in the parameter storage portion(“No” in step S4), the control portion creates a new parameter table(step S8).

Then, the control portion searches the parameter table for a table entryof the parameter name requested by the user (step S5).

When the table entry is found (“Yes” in step S6), the control portionchanges the value of the parameter to a value sent from the user (stepS7) and then this processing routine is terminated.

When the table entry is absent in the parameter table (“No” in step S6),the control portion creates a new table entry in the parameter table andwrites the name and value of the parameter sent from the user, into thisentry (step S9) and then this processing routine is terminated.

Customization of the UI screen can be achieved by the aforementionedprocedure.

When there is a screen display request from a user, the control portionsearches for a UI template required for display and creates a UI screenin accordance with the UI template. When the parameter name isdesignated in the template, the control portion acquiresmeta-information of the parameter designated from the meta-informationtable, acquires the parameter value from the parameter storage portionon the basis of the range of influence in the meta-information andcreates a UI screen.

When, for example, the range of influence is set to “all users”, thecontrol portion acquires the parameter from the “all users” table in theparameter storage portion. When, for example, the range of influence isset to “user”, the control portion acquires the parameter from the“user” table of the user requesting display.

When the parameter entry is absent in the “user” parameter table becausethe user has not customized the UI component yet, the control portionmay be designed to acquire the parameter from a parameter table wider inthe range of influence.

FIG. 10 is a flow chart showing a processing procedure for displaying aUI screen in accordance with a screen display request from a user.

When there is a screen display request from a user, the control portionacquires a UI template required for display (step S11).

The control portion acquires parameter values of respective parametersin each of UI components constituting the UI screen and decides thecontents of display of the UI components successively (step S16) tothereby display the whole page.

In a process of acquiring parameter values, the control portion firstacquires meta-information of a parameter from the meta-information table(step S12) and decides a parameter table on the basis of the range ofinfluence designated by the meta-information (step S13).

The control portion then finds the parameter table in the parameterstorage portion (step S14) and searches for a table entry of theparameter.

When the table entry is present in the parameter table (“Yes” in stepS15), the control portion reads the parameter value from the table entryand decides the contents of display of the UI component.

When the table entry is absent in the parameter table (“No” in stepS15), the parameter table to be used is changed to a parameter tableclosest and wider in the range of influence (step S17) and this routinegoes back to step S14 to repeat the process of finding the parametertable in the parameter storage portion and searching for a table entryof the parameter. When, for example, the entry of the parameter in whichthe range of influence is set to “user” is not found from the parametertable of the user, the control portion refers to a parameter table ofthe group containing the user. When the entry is still not found, thecontrol portion refers to a parameter table of all users.

When the contents of display are decided on the basis of the parametertable acquired as described above, a UI screen can be displayed.

Although the invention has been described in detail with reference to aspecific embodiment, the invention has been disclosed by way of example.

1. An information processing apparatus that configures an operationscreen formed by one or more user interface components in which aparameter value is a base of displaying the user component, theapparatus comprising: a meta-information storage that storesmeta-information in which a user having a privilege to change aparameter value and an influence range which is under influence of thechanged parameter are stored; a parameter storage that stores aparameter value set by a user; a parameter change section that changesthe parameter value stored in the parameter storage in accordance with arequest from a user; and an operation screen configuration section thatconfigures the operation screen to display by specifying the influencerange based on the meta-information of each parameter contained in theuser interface component, and acquiring the parameter value from theparameter storage.
 2. The information processing apparatus according toclaim 1, further comprising: a meta-information change section thatchanges the setting of the meta-information stored in themeta-information storage.
 3. The information processing apparatusaccording to claim 1, wherein the influence range is set for a user, agroup, or all users.
 4. An information processing method that configuresan operation screen formed by one or more user interface components inwhich a parameter value is a base of displaying the user component, themethod comprises: storing meta-information in which a user having aprivilege to change a parameter value and an influence range which isunder influence of the changed parameter are stored; storing a parametervalue set by each user; changing the stored parameter value inaccordance with a request from a user; and configuring the operationscreen to display by specifying the influence range based on themeta-information of each parameter contained in the user interfacecomponent, and acquiring the parameter value.
 5. The informationprocessing method according to claim 4, further comprising: changing asetting of the stored meta-information.
 6. The information processingmethod according to claim 4, wherein the influence range is set for auser, a group, and all users.
 7. A computer readable medium storing aprogram causing a computer to execute a process for configuring anoperation screen formed by one or more user interface components inwhich a parameter value is a base of displaying the user component, theprocess comprising: storing meta-information in which a user having aprivilege to change a parameter value and an influence range which isunder influence of the changed parameter value are stored; storing aparameter value set by a user; changing the stored parameter value inaccordance with a request from a user; and configuring the operationscreen to display by specifying the influence range based on themeta-information of each parameter contained in the user interfacecomponent, and acquiring the parameter value.
 8. The computer readablemedium according to claim 7, the process further comprising: changing asetting of the stored meta-information.
 9. The computer readable mediumaccording to claim 7, wherein the influence range is set for per a user,a group, or all users.
 10. The computer readable medium according toclaim 8, wherein the changing of the meta-information allows anadministrator of the system to change meta-information.
 11. The computerreadable medium according to claim 7, wherein the changing of theparameter value accepts change of a parameter value from a user giventhe privilege to change in the meta-information.
 12. The computerreadable medium according to claim 7, wherein the changing of theparameter value provides a section to change a parameter value to whicha privilege to change is given in the meta-information, to a userrequesting change of the parameter value.
 13. A computer readable mediumaccording to claim 7, wherein the storing of the parameter value storesparameter values in reference tables in accordance with influence range;the changing of the parameter stores a parameter value to be changed ina first reference table in terms of the range of influence; and theconfiguring of the screen reads the parameter value of each parameterfrom the first reference table in the influence range designated by themeta-information, and decides the format of display of user interfacecomponents when a screen to be presented to a user is configured.
 14. Acomputer readable medium according to claim 7, wherein the storing ofthe parameter stores parameter values with the range of influence set toall users in a second reference table, stores parameter values with theinfluence range limited to users in a specific group in a thirdreference table, and stores the contents of parameter values changed bya user per se in a fourth reference table; the changing of the parameterstores a parameter value with the influence range set to all users inthe second reference table, stores a parameter value with the influencerange set to users in the group in the third reference table, and storesa parameter value with the influence range set to the user per se in thefourth reference table of the user, when there is a request to change aparameter; and the configuring of the screen decides a method ofdisplaying user interface components by using the parameter value readfrom the second reference table with respect to the parameter with theinfluence range set to all users, uses the parameter value read from thethird reference table of the group containing the user with respect tothe parameter with the influence range set to the group, and uses theparameter value read from the fourth reference table of the user per sewith respect to the parameter with the influence range set to the user,when the operation screen is configured.
 15. A computer data signalembodied in a carrier wave for enabling a computer to perform a processfor configuring an operation screen formed an operation screen formed byone or more user interface components in which a parameter value is abase of displaying the user component, the process comprising: storingmeta-information in which a user having a privilege to change aparameter value and an influence range which is under influence of thechanged parameter value are stored; storing a parameter value set by auser; changing the stored parameter value in accordance with a requestfrom a user; and configuring the operation screen to display byspecifying the influence range based on the meta-information of eachparameter contained in the user interface component, and acquiring theparameter value.